#pragma once
/*
    需要实现的功能：
    （1）一些详尽的日志等级列表；
    （2）日志系统要支持能够被用户关闭的功能；
    （3）日志等级要是人类能够理解的字符串。
*/
#include<iostream>

namespace bit
{
    //日志等级类：
    class level
    {
    public:
        enum class logLevel
        {
            DEBUG = 1,  //调试信息
            INFO,       //提示信息
            WARN,       //警告信息
            ERROR,      //错误信息
            FATAL,      //致命错误信息
            OFF         //关闭
        };
        static const std::string level_tostring(logLevel lev)
        {
            std::string ret;
            switch(lev)
            {
                case logLevel::DEBUG: ret = "DEBUG"; break;
                case logLevel::INFO : ret = "INFO";  break;
                case logLevel::WARN:  ret = "WARN";  break;
                case logLevel::ERROR: ret = "ERROR"; break;
                case logLevel::FATAL: ret = "FATAL"; break;
                case logLevel::OFF:   ret = "OFF";   break;
                default: ret = "UNKNOW";
            }
            return ret;
        }
    };
}